Converged infrastructures combine multiple information technology (“IT”) computing components into pools of resources that may be accessed in a centralized and efficient manner. For example, a converged infrastructure may include pools of compute, storage, and network devices that may be shared and accessed by multiple applications. In addition to pooling computing components, converged infrastructures typically include management software that may be used to manage, automate, and/or orchestrate the pooled resources.
While the convergence of different IT computing components within a converged infrastructure may promote utilization efficiencies, the disparate nature of the computing resources included within the converged infrastructure may present challenges. For example, converged infrastructures typically include a large mix of heterogeneous computing resources, all of which may require different application programming interfaces (“APIs”) when interfacing with management software. Conventional methods for handling multiple APIs involve statically configuring each API for each computing component included within the converged infrastructure, which is inefficient and lacking in resiliency, robustness, resulting in time-consuming and labor-intensive coding.